package com.yeyks.service;

import com.yeyks.account.dal.domain.AccountInfo;
import com.yeyks.common.appcommon.dto.order.AppAutoGrabOrderDTO;
import com.yeyks.common.appcommon.dto.order.AppGrabOrderDTO;
import com.yeyks.common.appcommon.param.order.AddGrabOrderParam;
import com.yeyks.common.appcommon.param.order.UpdateAutoGrabOrderParam;
import com.yeyks.common.appcommon.result.CommonResult;

import java.util.List;

/**
 * 抢单服务接口
 * @author: dagny
 * @date: 2019/8/12 0012 15:51
 */
public interface AppGrabOrderService {

    /**
     * 得到抢单的列表
     * @param convert 当前查询账户
     * @return 返回结果
     */
    CommonResult<List<AppGrabOrderDTO>> list(AccountInfo convert);

    /**
     * 抢单操作
     * @param param 输入参数
     * @param convert 操作酒店账户信息
     * @return 返回结果
     */
    CommonResult grabOrder(AddGrabOrderParam param, AccountInfo convert);

    /**
     * 查询酒店是否自动抢单
     * @param convert 操作账户
     * @return 返回结果
     */
    CommonResult<AppAutoGrabOrderDTO> getAutoGrabOrder(AccountInfo convert);

    /**
     * 更新是否自动抢单
     * @param param 输入采纳数
     * @param convert 操作账户
     * @return 返回结果
     */
    CommonResult updateAutoGrabOrder(UpdateAutoGrabOrderParam param, AccountInfo convert);

    /**
     * 得到抢单的列表(1.6.1)
     * @param convert 当前查询账户
     * @return 返回结果
     */
    CommonResult<List<AppGrabOrderDTO>> newList(AccountInfo convert);

    /**
     * 抢单操作(1.6.1)
     * @param param 输入参数
     * @param convert 操作酒店账户信息
     * @return 返回结果
     */
    CommonResult grabNewOrder(AddGrabOrderParam param, AccountInfo convert);
}
